#include<bits/stdc++.h>
using namespace std;
int main(){
	int i=0,j=0,n,flag,f;
	char ch,b[100];
	scanf("%d",&n);
	set<string> s[105];
	for( i = 1 ; i <= n ; i++ ){
		f=1;
		j=0;
		flag=0;
		while((ch=getchar())!='#'){
			if(flag!=1&&ch>='a'&&ch<='z'||ch>='A'&&ch<='Z'){
				if(ch>='a'&&ch<='z'){
					ch=ch-32;
				}
				b[j++]=ch;
				if(j==10){
					flag=1;
				}
				f=0;
			}
			else if(f==0&&!(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')){
				if(j>2){
					string str(&b[0],&b[j]);
					s[i].insert(str);
				}
				f=1;
				j=0;
				flag=0;
			}
		}
	}
	int m,num1,num2,num;
	double result;
	scanf("%d",&m);
	for( i = 0 ; i < m ; i++ ){
		num=0;
		result=0;
		set <  string >::iterator it;
		scanf("%d%d",&num1,&num2);
		for(it = s[num1].begin() ; it != s[num1].end() ; it++ ){
			if(s[num2].count(*it)){
				num++;
			}
		}
		result=num*100.0/(s[num1].size()+s[num2].size()-num);
		printf("%.1f%\n",result);
	}
	return 0;
}
